<?php   // $Id: choix_cli.php 285 2008-09-10 16:06:50Z pcoustillas $ ?>
<?php

require_once("verif.php");

function inclure_combo_client($nom_champ="num_client",$num_client_def=0,$nom_form="formu")
{
	//$nom_champ correspond au nom du champ <select name=$nom_champ
	//num_client_def permet de selectionner un client par defaut SELECTED , ne fonctionne que si pas d'initiale
	//nom_form permet d'indiquer à javascript le nom du formulaire
	global $tblpref; //indispensable pour recuperer le prefixe des tables
	global $conf_xml;

	$req_client = "SELECT num_client, concat(nom,' ',nom2) as nom FROM ${tblpref}client WHERE actif != 'non'";
	
	if ($conf_xml->generale->initiale_client=="oui") {
	//Afficher deux combos, une pour les initiales, l'autres pour les noms
	?>
		<select class="option" name="initialie" onChange='javascript:change_initiale_<?php echo $nom_form ?>(this.value)'>
		<?php
		
		//tableau js des initiales
		//on utilise cette boucle pour remplir la combo des initiales.
		//mais on a encore besoins des initiales pour les associées aux noms. Donc on stocke dans un tableau $lettre
		$sql_initialie="SELECT SUBSTRING(nom, 1, 1)as lettre FROM ${tblpref}client WHERE actif != 'non' GROUP by SUBSTRING(nom, 1, 1)";
		$res_initialie = mysql_query($sql_initialie) or die("Erreur SQL !<br/>$sql_initialie<br/>" . mysql_error());
		$lettre[0]="--"; //pour le client Choississez (de numéro 0), par contre ca risque de buger si le nom d'un client commence par --
		echo "<option value='--' >--</option>"; //pour le client Choississez (de numéro 0)
		while($tab_initialie = mysql_fetch_array($res_initialie)){
			$lettre[]=$tab_initialie['lettre'];
			echo "<option value='" . $tab_initialie['lettre'] . "' >" . $tab_initialie['lettre'] . "</option>";
		}
	
		?>
		</select>
	
	
		<script type="text/javascript">
			var client = new Array;
			client['--'] = new Array;
			client['--']['0'] = new Array(0, 'Choisissez');
		</script>
		
		<select class="option" name="<?php echo $nom_champ ?>">
			<option value='0' >Choississez</option>
		<?php


		foreach ($lettre as $num_lettre => $inititale) {
			echo "<script>client['$inititale'] = new Array</script>";
			$req_client_init = "$req_client AND `nom` LIKE '$inititale%' order by nom ";
			$res_client = mysql_query($req_client_init) or die("Erreur SQL !<br/>$req_client_init<br/>".mysql_error());
			$num_init=0; //numero de la position du client pour chaque initiale
			while($tab_client = mysql_fetch_array($res_client))
			{
				$nom_client=addslashes($tab_client['nom']);
				$num_client=$tab_client["num_client"];
				echo "<script>client['$inititale']['$num_init'] = new Array($num_client, '$nom_client');</script>";
				//if ($num_lettre == 0) //on ne rempli la liste que pour la premiere lettre
				//{
				//	echo "<option value='$num_client' >" . $tab_client['nom'] . "</option>";
				//}

				$num_init=$num_init+1;
			}
		
		}
		?>

		<script type="text/javascript">
			function change_initiale_<?php echo $nom_form ?>(initiale)
			{
				//vider la combo client avant de la remplir.
				taille_combo=document.<?php echo $nom_form ?>.elements["<?php echo $nom_champ ?>"].length;
				
				for (i=taille_combo-1; i>=0; i--)
				{
					document.<?php echo $nom_form ?>.elements["<?php echo $nom_champ ?>"].options[i]=null;
				}

				for (i=0; i<client[initiale].length; i++)
				{
					new_option = new Option(client[initiale][i][1],client[initiale][i][0]);
					document.<?php echo $nom_form ?>.elements["<?php echo $nom_champ ?>"].options[document.<?php echo $nom_form ?>.elements["<?php echo $nom_champ ?>"].length]=new_option;
				}
			}
		</script>
		
		<?php
	
	} else {
	//l'utlisateur ne souhaite pas avoir les initiales
		?>
		<select class="option" name="<?php echo $nom_champ ?>">
			<?php
			$result = mysql_query($req_client . "  order by nom") or die( "Exécution requête impossible." . mysql_error());
			?>
			<option value='0'><?php aff_lang("Choisissez") ?></option>
			<?php
			while ( $row = mysql_fetch_array( $result))
			{
				$numclient = $row["num_client"];
				$nom = $row["nom"];
			?>
				<option value='<?php echo $numclient; ?>' <?php if ($num_client_def==$numclient) echo "selected='selected'" ?> ><?php echo $nom; ?></option>
				<?php
			}
		
		
		?>
		
		</select>
	<?php
	}

}
?>

